package cn.wolfcode.car.business.mapper;

import cn.wolfcode.car.business.domain.Statement;
import cn.wolfcode.car.common.base.query.QueryObject;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

public interface StatementMapper {

    Statement queryById(Long id);

    List<Statement> selectAll();

    List<Statement> queryForList(QueryObject qo);

    void insert(Statement statement);

    void insertBatch(@Param("list") List<Statement> statement);

    void update(Statement statement);

    void deleteById(Long id);

    void updateAmount(@Param("totalAmount") BigDecimal totalAmount, @Param("totalQuantity") BigDecimal totalQuantity, @Param("itemPrice") BigDecimal itemPrice, @Param("statementId") Long statementId);

    void status(@Param("id") Long id, @Param("statusPaid") Integer statusPaid, @Param("userId") Long userId);

    Statement queryAppointmentId(Long appointmentId);
}

